import App from './App'

// #ifndef VUE3
import Vue from 'vue'
import './uni.promisify.adaptor'
import store from './store/idnex.js'
import "./styles/common.scss";
Vue.config.productionTip = false
App.mpType = 'app'
const app = new Vue({
	store,
	...App
})

app.$store.dispatch("system/getSystemInfo").then((systemInfo) => {
	console.log("系统信息已获取:", systemInfo);
});

// 监听tabbar状态变化，同步到原生tabbar
store.watch(
	(state) => state.tabbar.current,
	(newIndex) => {
		// 切换原生tabbar的选中状态
		uni.switchTab({
			url: store.getters["tabbar/tabbarList"][newIndex].pagePath,
			fail: () => {
				console.log(
					"切换tabbar失败，可能是页面路径不正确或不在pages.json的tabBar配置中"
				);
			},
		});
	}
);

// 监听tabbar列表变化，动态更新原生tabbar
store.watch(
	(state) => state.tabbar.list,
	(newList) => {
		console.log("Tabbar列表已更新，请在pages.json中手动更新tabBar配置");
		// 注意：由于uni-app限制，动态更新原生tabbar的图标和项目需要原生API支持
		// 目前仅能通过更新pages.json实现，或使用自定义tabbar组件
	}
);

app.$mount()
// #endif

// #ifdef VUE3
import {
	createSSRApp
} from 'vue'
export function createApp() {
	const app = createSSRApp(App)
	return {
		app
	}
}
// #endif